#ifndef UART_CONTROL_H
#define UART_CONTROL_H

#include "hal_uart.h"
#include <stddef.h>


void UART_Init();

//蓝牙回显，使用时，需要放在死循环中被调用
void UART_Echo();

//蓝牙回显，使用时，需要放在死循环中被调用
void UART_BLUE();



//用于上层RX2回调，获取RX2数据接收寄存器，需要配合UART_BLUE
void UART_GetRX2();
//用于上层RX1回调，获取RX1数据接收寄存器,需要配合UART_Echo,或者UART_Echo
void UART_GetRX1();

//下面2个函数在上层实现，需要传递函数指针,是用于UART_BLUE模式下RX2接收数据后APP处理还是PC处理
void UART_APP_Control(void (*APP)(unsigned char *, unsigned char)); // 
void UART_PC_Control(void (*PC)(unsigned char *, unsigned char));  //

//↓此函数需要上层调用，需要传递函数指针，用于处理串口1 接收到的数据
void UART_RX1CallBack(void (*RX1Work)(unsigned char *, unsigned char));

#endif // UART_CONTROL_H